package com.thz.common.dto.svg;

import lombok.Data;

/**
 * 文件转SVG请求DTO
 * 
 * @author THZ
 * @date 2025
 */
@Data
public class ConversionFileToSvgRequestDTO {
    
    /**
     * 输出SVG宽度（可选，null则保持原始尺寸）
     */
    private Integer width;
    
    /**
     * 输出SVG高度（可选，null则保持原始尺寸）
     */
    private Integer height;
    
    /**
     * 是否保持宽高比（默认true）
     */
    private Boolean keepAspectRatio = true;
    
    /**
     * 颜色数量（可选，由precision自动计算）
     * 已废弃：现由后端根据precision自动调节
     */
    @Deprecated
    private Integer colorCount;
    
    /**
     * 矢量化精度（1-10，默认8）
     * precision越高，颜色越丰富，细节越精细，但文件会更大
     * 
     * 推荐设置：
     * - 3-5: Logo/图标（16-32色，文件小）
     * - 6-8: 照片/复杂图像（64-128色，平衡质量与大小）
     * - 9-10: 高质量要求（128+色，文件较大）
     */
    private Integer precision = 8;
}


